﻿using RoslynProxy.Core;

namespace RoslynProxy.Builder
{
    public interface IMyService
    {
        void Show();

        void Show1();
    }

    public class MyService : IMyService
    {
        public void Show()
        {
            System.Console.WriteLine("Hello World!");
        }

        public void Show1()
        {
            System.Console.WriteLine("Hello World12312321!");
        }
    }

    public class MyProxyService : RoslynDispatchProxy<MyProxyService, IMyService, MyService>
    {
        protected override void BeginInvoke()
        {
            Console.WriteLine("BeginInvoke MyService");
        }

        protected override void EndInvoke()
        {
            Console.WriteLine("EndInvoke MyService");
        }
    }
}
